package com.example.myapplication.kotlin

/*
 run作用域函数,作用域内计算,
 常用于对象配置+计算结果、替代构造器,
 run可以创建一个临时工作区,可以执行多个操作,最后会返回块中最后一行表达式的值
 */
fun main() {
    //【run作用域=>相同变量名,最近作用域生效】
    // 当在run作用域内定义与外部同名的变量时,作用域内声明的变量会覆盖外部变量
    var num = 22;
    val result = run {
        var num = 10
        num++
        println(num) // 11
        num // 11最后一行的表达式的值会作为run的返回值
    }
    println(result) // 11
    println(num) // 22
}
